![](images/banner.jpg)
Week 12 Interface and Application Programming
This week I will try to use python and processing languages to make a GUI for my final project.
Weekly Assignment
- Group assignment:compare as many tool options as possible.
- Individual assignment:write an application that interfaces a user with an input &/or output device that you made.
Individual assignment
Processing
Processing a software sketchbook that been use by artists, designers and so on. It Interactive programs with 2D, 3D, PDF, or SVG output . Also you can use it with arduino to make a Gui for arduino hardware. Processing language is very similar with arduino.
- Download Processing
- Check Reference of Processing
- Download Anconda
- Spyder is a python development enviroment. I want to try to run the code of use a button to click and control a led.
Processing Simple Gui for Arduino
I use processing to creat a simple gui to control a green LED.
Arduino IDE Code:
![](images/week12/arduino-process-led-code.png)
Processing Code is below: Processing code is quite similar with arduino. when you want to put a picture as background you just drag it in to processing box and it will upload.
![](images/week12/processing-gui-led.png)
Here is the video how it works:
Python Gui with arduino
Software: Anaconda for Python 3.7
Then lanuch Spyder which is a software for python.
![](images/week12/anaconda.png)
![](images/week12/python-arduino.png)
Here is the code in Arduino.
![](images/week12/buttonclick-python.png)
Here is a video of how it works:
Final Project Interface
For my final project I have 3 button and one force resistor, I need to make a interface that when I push button, it will show on interface like sad, happy, neutrl.
I use my gino board for it, and use processing to make a very simple gui.
![](images/finalproject/process+arduino.png)
![](images/finalproject/happy.png)
First test, It looks like this when I push my button on smart paw.
Then I updated button pictures and texts for this GUI:
My final project video is also here, you need to use VPN to watch it.